// /* eslint-disable import/no-named-as-default-member */
import Vue from "vue";
import VueI18n from "vue-i18n";
import { resources, defaultLang } from "@/lang/index";
import '../../datePicker-ui/datePicker-ui.css'
import datePicker from '../../datePicker-ui/datePicker-ui.umd'

// 使用本地日历插件
// import install from '../packages'

// install(Vue, {
//   isShowLunar: false,
//   locale: 'zh-CN',
//   isInternational: false,
//   lunarHolidays: {'0428': '测试节日'},
//   gregorianHolidays: {'0528': '测试'},
// })

// 先注册日历插件 - 内部有多语言 VueI18n 插件
Vue.use(datePicker, {
  isShowLunar: false,
  locale: 'zh-CN',
  lunarHolidays: {'0628': '测试节日'},
  gregorianHolidays: {'0628': '测试'},
})

// 再注册本地 VueI18n 插件 - 覆盖日历插件内的VueI18n插件
Vue.use(VueI18n);

/**
 * 获取设备当前语言
 */
export const getLanguage = () => {
  try {
    return sessionStorage.getItem('LANG') || defaultLang || "";
  } catch (error) {
    return defaultLang; // 默认语言
  }
};

// 创建i18n实例
const i18n = new VueI18n({
  locale: getLanguage() || "zh_CN", // 默认语言
  fallbackLocale: "zh_CN", // 回退语言
  messages: resources,
});
/**
 * 动态设置当前语言
 */
export const changeLanguage = (language, i18nFn) => {
  console.log('changeLanguage============')
  console.log(i18n)
  console.log(i18nFn)
  console.log(Vue.prototype.$i18n)
  console.log('changeLanguage============')
  i18n.locale = language;
  // 设置本底语言
  // sessionStorage.setItem('LANG', language);
};

export default i18n;
